
/**
 * @(#)MessageVO.java 2017年9月28日  下午2:47:42
 * <p>
 * Copyrights (C) 2017高德信息技术有限公司
 */
package com.wwy.monitor.model.vo;

import java.util.List;

/**
 * (类型功能说明描述)
 *
 * <p>
 * 修改历史:                                            <br>
 * 修改日期         修改人员    版本          修改内容<br>
 * -------------------------------------------------<br>
 * 2017年9月28日 下午2:47:42   fulianqiu     1.0     初始化创建<br>
 * </p>
 *
 * @author fulianqiu
 * @version 1.0
 * @since JDK1.7
 */
public class DingMessageVO extends Message {

    /**
     * (变量说明描述)
     * <p>
     * long DingMessageVO.java serialVersionUID
     */
    private static final long serialVersionUID = 365524794728879154L;

    /**
     * 消息中心支持多租户多账户体系，数据安装账户体系隔离。消息根据accountType+receiverNo来建立索引。
     * 默认或者accountType为空时accountType是BUC，即集团内部账户体系
     */
    private String accountType = "BUC";
    /**
     * 发送者公司编号，支持多公司
     */
    private String receiverGid = "00001";
    /**
     * 接收人工号（短工号，如:77294, 而不是077294）
     */
    private List<String> receivers;
    /**
     * 钉钉消息类型
     * <li>oa: OA消息</li>
     * <li>text: 文本消息</li>
     * <li>link: link消息</li>
     * <li>image: 图片消息</li>
     * <li>voice: 语音消息</li>
     * <li>file: 文件消息</li>
     */
    private String type;

    private OaBody oABody;

    private TextBody textBody;

    private LinkBody linkBody;

    private ImageBody imageBody;

    private VoiceBody voiceBody;

    private FileBody fileBody;

    public String getAccountType() {
        return accountType;
    }

    public void setAccountType(String accountType) {
        this.accountType = accountType;
    }

    public String getReceiverGid() {
        return receiverGid;
    }

    public void setReceiverGid(String receiverGid) {
        this.receiverGid = receiverGid;
    }

    public List<String> getReceivers() {
        return receivers;
    }

    public void setReceivers(List<String> receivers) {
        this.receivers = receivers;
    }

    public String getType() {
        return type;
    }

    public void setType(String type) {
        this.type = type;
    }

    public OaBody getoABody() {
        return oABody;
    }

    public void setoABody(OaBody oABody) {
        this.oABody = oABody;
    }

    public TextBody getTextBody() {
        return textBody;
    }

    public void setTextBody(TextBody textBody) {
        this.textBody = textBody;
    }

    public LinkBody getLinkBody() {
        return linkBody;
    }

    public void setLinkBody(LinkBody linkBody) {
        this.linkBody = linkBody;
    }

    public ImageBody getImageBody() {
        return imageBody;
    }

    public void setImageBody(ImageBody imageBody) {
        this.imageBody = imageBody;
    }

    public VoiceBody getVoiceBody() {
        return voiceBody;
    }

    public void setVoiceBody(VoiceBody voiceBody) {
        this.voiceBody = voiceBody;
    }

    public FileBody getFileBody() {
        return fileBody;
    }

    public void setFileBody(FileBody fileBody) {
        this.fileBody = fileBody;
    }

    @Override
    public String toString() {
        StringBuilder builder = new StringBuilder();
        builder.append("DingMessageVO [accountType=").append(accountType).append(", receiverGid=").append(receiverGid)
                .append(", receivers=").append(receivers).append(", type=").append(type).append(", oABody=")
                .append(oABody).append(", textBody=").append(textBody).append(", linkBody=").append(linkBody)
                .append(", imageBody=").append(imageBody).append(", voiceBody=").append(voiceBody).append(", fileBody=")
                .append(fileBody).append("]");
        return builder.toString();
    }

}